const mysql = require('../../connect/index');
const sequelize = mysql.sequelize;
const { DataTypes } = require('sequelize');
const Sales = sequelize.define("shop_sales",{
    id:{
        type:DataTypes.INTEGER,
        allowNull:false,
        primaryKey:true,
        autoIncrement:true
    },
    orderid:{
        type:DataTypes.STRING,
        allowNull:false,
    },
    desc:{
        type:DataTypes.STRING,
        allowNull:false,
    },
    thumb:{
        type:DataTypes.STRING,
        allowNull:false,
    },
    carryid:{
        type:DataTypes.STRING,
        allowNull:false,
    },
    state:{
        type:DataTypes.STRING,
        allowNull:false,
    }
}, {
    freezeTableName: true, // 禁用表名复数化
    tableName: 'shop_sales',
    timestamps: true,  // 禁用 createdAt 和 updatedAt 字段
    createdAt: 'ctime',
    updatedAt: 'utime'
});

const SalesFlow = sequelize.define("shop_sales_flow",{
    id:{
        type:DataTypes.INTEGER,
        allowNull:false,
        primaryKey:true,
        autoIncrement:true
    },
    salesid:{
        type:DataTypes.STRING,
        allowNull:false,
    },
    prestate:{
        type:DataTypes.STRING,
        allowNull:false,
    },
    state:{
        type:DataTypes.STRING,
        allowNull:false,
    },
    operator:{
        type:DataTypes.STRING,
        allowNull:false,
    },
    remark:{
        type:DataTypes.STRING,
        allowNull:false,
    }
}, {
    freezeTableName: true, // 禁用表名复数化
    tableName: 'shop_sales_flow',
    parentId: Sales.id,
    timestamps: true,  // 禁用 createdAt 和 updatedAt 字段
    createdAt: 'ctime',
    updatedAt: false
});

Sales.hasMany(SalesFlow, {
    foreignKey: 'orderid'
});
SalesFlow.belongsTo(Sales);

module.exports = {
    Sales,
    SalesFlow
};
